Erasing nonvolatile memory tends to be complicated, generally involving several procedures before the memory is available for subsequent operations. As illustrated in FIG. 1, the voltage across the cells decreases during the progression of the erasing operation, in which a series of erase voltage pulses are provided to the cells. An erase-verify operation may then be performed to check if all the cells are fully depleted (i.e., below the erase-verify (EV) voltage), and if not, further erase voltage pulses may be provided to the cells. After the bulk erase operation is completed, some or all of the cells may be soft-programmed to bring the threshold voltages up to within a specified range. This soft-programming is a countermeasure against an overerased state in which a cell threshold voltage is too low. Overerasure can lead to problems such as current leakage and read noise resulting therefrom.
Given the rather involved process of erasing nonvolatile memory, problems have been known to arise when the erase algorithm is interrupted prior to completion. After a power loss, for example, completion of an erase is sometimes verified by checking every address of the memory block(s). Erase completion may be verified if all addresses return all 1's (0xFFFF). All 1's, however, does not necessarily accurately reflect the erase status at least in terms of the charge on the cells. As mentioned, the erase procedure involves not only erasing of the cells (removal of charge) but also a soft-program (addition of charge) to adjust the threshold voltage of the cells to be within a specified range. If the erase algorithm is interrupted prior to the soft-programming step or at some other time when the charge is not within the specified range, functionality or reliability issues can arise.